#ifndef SCANMUSIC_H
#define SCANMUSIC_H
/*
 搜索格式为.mp3
 预留其他格式文件以供搜索
 设置默认目录，如果不指定目录，则从该目录进行搜索
*/
#include <QObject>
#include <QThread>
#include <QDir>
#include <QFile>
#include <QStringList>
#include <QDebug>
#include <QFileInfo>
#include "scanlyric.h"


class ScanMusic : public QObject
{
    Q_OBJECT
public:
    explicit ScanMusic(QObject *parent = nullptr,\
                       const QString &path="/", const QString &format="mp3");

    QString getFileFormat() const;
    void setFileFormat(const QString &value);

    QString getScanPath() const;
    void setScanPath(const QString &value);

signals:
    void mp3InfoReady(QStringList mp3InfoList);

public slots:
    //寻找MP3文件
    void finMp3Files(const QString &path);

private:
    //线程对象
    QThread* thread;
    //预留的文件格式
    QString fileFormat;
    //预留搜索路径
    QString scanPath;
    ScanLyric *scanLyric;
};

#endif // SCANMUSIC_H

/***********************************************************************************************/
/***********************************************************************************************/
/***********************************************************************************************/
/***********************************************************************************************/
/***********************************************************************************************/
/*
    该类用于搜索歌曲
    默认从 / 开始搜索格式为 mp3 的文件，在构造函数中可以通过传递目录和格式进行修改
    找到了对应格式的文件会发出信号 void mp3InfoReady(QSTringList mp3InfoList);
    mp3InfoList[0]:歌曲名称
    mp3InfoList[1]:歌曲绝对路径
    mp3InfoList[2]:歌词名称(没找到则为空)
    mp3InfoList[3]:歌词绝对路径(没找到则为空)
*/
